package com.jiao.testdemo.pattern.template;

/**
 * TODO(文件概要)
 *
 * <p> TODO(具体描述信息,可以不填)
 *
 * @author meetsocial
 * @version V1.0
 * @className: AbstractClass
 * @date 2024/11/15 11:26
 */
public abstract class AbstractClass {
    // 模板方法
    public final void templateMethod() {
        step1();
        step2();
        step3();
    }

    // 具体步骤1
    private void step1() {
        System.out.println("Step 1");
    }

    // 具体步骤2，留给子类实现
    protected abstract void step2();

    // 具体步骤3
    private void step3() {
        System.out.println("Step 3");
    }

}
